﻿using System;

namespace Cloak
{
	/// <summary>
	/// An error that signals cancellation of an asynchonrous operation
	/// </summary>
	public class OperationCancelledException : Exception
	{
		/// <summary>
		/// Initializes an empty exception
		/// </summary>
		public OperationCancelledException() : base()
		{}

		/// <summary>
		/// Initializes an exception with the specified message
		/// </summary>
		/// <param name="message">The message that describes the error</param>
		public OperationCancelledException(string message) : base(message)
		{}

		/// <summary>
		/// Initializes an exception with the specified message and inner exception
		/// </summary>
		/// <param name="message">The message that describes the error</param>
		/// <param name="inner">The exception that is the cause of the current exception</param>
		public OperationCancelledException(string message, Exception inner) : base(message, inner)
		{}
	}
}